#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
typedef int ListDataType;

typedef struct ListNode
{
	ListDataType data;
	struct ListNode* prev;
	struct ListNode* next;
}ListNode;

void ListInit(ListNode* phead);

void ListPushFront(ListNode* phead, ListDataType x);

ListNode* BuyNewNode(ListDataType x);

void ListPrint(ListNode* phead);

void ListPushBack(ListNode* phead, ListDataType x);

void ListPopFront(ListNode* phead);

void ListPopBack(ListNode* phead);

void ListDestroy(ListNode* phead);

ListNode* ListFind(ListNode* phead, ListDataType x);

void ListInsert(ListNode* pos, ListDataType x);

void ListErase(ListNode* pos);




